Reconciling optimization with secure compilation
نویسندگان
چکیده
Software protections against side-channel and physical attacks are essential to the development of secure applications. Such meaningful at machine code or micro-architectural level, but they typically do not carry observable semantics source level. This renders them susceptible miscompilation, security engineers embed input/output side-effects prevent optimizing compilers from altering them. Yet these error-prone compiler-dependent. The current practice involves analyzing generated make sure privacy properties still enforced. These may also be too expensive in fine-grained such as control-flow integrity. We introduce observations program state that intrinsic correct execution protections, along with means specify preserve across compilation flow. complement semantics-preservation contract compilers. an opacification mechanism enforce a partial ordering observations. approach is compatible production compiler does incur any modification its optimization passes. validate effectiveness performance our on range benchmarks, expressing applications terms made specific points.
منابع مشابه
Formally Secure Compilation
Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...
متن کاملFormally Secure Compilation
Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...
متن کاملFormally Secure Compilation
Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...
متن کاملFormally Secure Compilation
Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...
متن کاملFormally Secure Compilation
Severe low-level vulnerabilities abound in today’s computer systems, allowing cyber-attackers to remotely gain full control. This happens in big part because our programming languages, compilers, and architectures were designed in an era of scarce hardware resources and too often trade off security for efficiency. The semantics of mainstream low-level languages like C is inherently insecure, an...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on programming languages
سال: 2021
ISSN: ['2475-1421']
DOI: https://doi.org/10.1145/3485519